以可解释、可验证、可复用的工程原则设计 AI Agent——全书只围绕一句话展开:Agent = LLM + 上下文 + 工具,也就是大脑 + 眼睛 + 手脚。十章从"如何构建 Agent"走向"如何提升 Agent 能力"。
作者李博杰(Pine AI 首席科学家)在图灵《AI Agent 实战营》讲义基础上重构而成,核心公式贯穿全书。它有三个表达层次,对应三种读者语言;理解了它,十章内容就都有了坐标系。
LLM(大脑)负责思考与决策;上下文(眼睛)决定能看到什么信息;工具(手脚)决定能做什么事。三者缺一不可。
上下文不只含环境与对话历史,还包括工具定义——Agent "看到"的信息里也有"有哪些手脚可用"。
LLM ↔ Policy(策略);上下文 ↔ Observation Space(观察空间);工具 ↔ Action Space(动作空间)。
本书章节相对独立,按你的身份选路线,不必从头平推:
每一章都是可独立阅读的工程模块:第 1–6 章构建单 Agent(公式、上下文、记忆、工具、代码、交互),第 7–10 章提升能力(评估、后训练、进化、多 Agent)。展开卡片可查看逐节要点与核心术语,★ 为章节实验难度。
按"构建 → 提升 → 协作"的阅读顺序排列。每一张卡都能在正文中找到更完整的推导与实验支撑。
系统性设计、组织、提供 Agent 完成任务所需的全部背景知识。上下文质量决定能力上限——"中等模型 + 精心上下文 > 顶级模型 + 信息匮乏"。
系统提示词与工具定义构成不变前缀;用户消息/模型回复/工具结果累积成动态轨迹。KV Cache 命中的前提就是"前缀字节级稳定,动态信息只追加末尾"。
缓存历史 token 的中间结果,避免每生成一个词都重算前文;前缀一改,首个不同 token 之后全部失效。它是"为什么提示词定下就别改"的底层经济学。
把领域知识封装为 SKILL.md:目录(name+description)常驻、正文按需加载、子文档深潜。description 是"路由钥匙"——写清何时用/何时不用,是最经济的上下文组织方式。
攻击者借外部内容把伪装指令混入上下文。上下文层靠来源标记与结构化角色"帮模型分清指令和数据",但真正兜底在执行层的权限与沙盒。
把"打了几次电话"这类分散在 KV Cache 的隐式状态提炼为显式知识,注入上下文末尾供模型"瞥一眼"。本质:上下文学习像检索,需要主动提供提炼后的知识。
检索相关片段 → 注入上下文 → 生成。生产级管线 = 结构感知分块 + 稠密/稀疏混合检索 + RRF 融合 + 跨编码器重排;超越扁平文本还需 RAPTOR/GraphRAG 等索引期提炼。
把知识库当成 Agent 可随时调用的工具,多轮迭代:检索 → 评估信息是否充分 → 精化查询再搜。价值是"解决问题"而非"回答问题"。
Anthropic 2024 发布的开放标准,统一模型与外部工具/数据源的通信(客户端-服务器,stdio/Streamable HTTP)。一次开发、处处可用;是"工具分发"的协议层。
工具接口应"对 Agent 友好而非对人友好":对应 Agent 的目标而非底层 API、命名参数直观、让错误在设计上无法发生(防呆)。
Agent 边界内、模型之外的运行与治理层:上下文管理 + 工具接口 + 约束 + 验证 + 纠正。"模型此刻的能力边界,就是 Harness 此刻的价值。"
产出与评判由不共享上下文的两个角色承担,审核者只看独立证据(渲染结果/测试输出)。前提是自审不可靠——无外部反馈的自我修正甚至会更差。
Pass@k(k 次至少一次通过)衡量"能否偶尔创造奇迹";Pass^k(连续 k 次全过)才对应支付、退款、权限变更的业务可靠性。写报告必须说清口径。
设计"发现下一件事 → 执行 → 验证 → 记录进度"的循环,由验证器判定能否停止。"模型可以提出完成,但不能批准自己的完成——循环的瓶颈在验证器。"
预训练建地基,Mid-training 补目标领域知识,SFT 固化协议性格式,RL 在试错中学会泛化。判断口诀:缺底座→Mid-training;缺协议→SFT;有成功率但泛化不足→RL。
把"评估环境的验证器"直接当作 RL 奖励函数——定义清晰的 Rubric/验证器,就是通向后训练的桥。可靠、可规模化,是"数据与环境比算法重要"的落点。
保存经历 ≠ 从经历中学习。按能力的表示性质选载体:知识库(事实)/ Prompt 与 Skill(原则)/ 程序与 Harness(硬约束)/ 参数(高维隐式能力),且"安全机制不可自我修改"。
要不要上多 Agent,只看一条:协作是否引入了单 Agent 生成时无法获得的新信息(执行反馈、视觉验证、外部工具结果)。否则多个 Agent 只是花更多 token 看同一段文本。
这本书信息密度高(10 章正文 + 100+ 实验 + 10 组思考题),平推容易"读了就忘"。下面六条方法专为"Agent 工程"这类动手型知识设计。
每读一章先问:它挂在哪一个词上?第 1–6 章回答"Agent = LLM + 上下文 + 工具"怎么搭,第 7–10 章回答怎么让它变好。读第 2 章前先背下 KV Cache 三结论,读第 8 章先分清 底座/协议/策略——锚点清晰,细节才有地方挂。
本书配套代码仓库(github.com/bojieli/ai-agent-book),100+ 实验按 ★ 分级。建议顺序:先跑一个 ★★ 实验看现象 → 再回去读对应章节找解释 → 实验失败本身就是最好的教材。动手成本远低于想象的章节(如 2-1 本地小模型、3-5 手写 BM25)优先做。
把第 2 章的结论直接用于你的日常:系统提示词定下不改、动态信息追加末尾、工具描述写"何时用 + 边界"。当你给任何 Agent/IDE 配置提词时都按这套纪律来,KV Cache 与注意力原理就内化成肌肉记忆。
第一遍 浏览:只读每章开篇论点 + 小结 + 金句,建立地图(约半天);第二遍 精读:按你自己的路线逐章读机制与案例,随手做术语卡;第三遍 重做:合上书,把每章的"一句话结论 + 三个术语"默写出来,写不出的回去补。
每读完一章,用 300 字向"不懂 Agent 的朋友"讲清这章解决什么问题;再挑一个书中结论到真实项目里验证(例如给工具描述补边界条件、看调用准确率是否提升)。能转述 + 能验证才算真正掌握。
最高级的学法是边读边改造自己的工作流:读完第 1 章给项目加 CLAUDE.md/AGENTS.md;第 2 章给 Prompt 做缓存纪律;第 4 章给工具写边界描述;第 7 章建一条评估轨迹;第 9 章把失败经验写成 Skill。让本书的工程原则直接长进你的工具链,书读完了,你的 Coding Agent 也升级了。
沿用引言给出的三种读法细化成可执行路线。每条路线都标注了每周的章节动作、要跑的实验与产出物;完成标志不是"读完",而是"跑通 + 讲清"。点击标签切换路线。
全书实验按 ★(复现与体验)/★★(深度实现)/★★★(挑战前沿)分级,均配套代码仓库。下面是按学习价值精选的"旗舰清单"——覆盖认识论、上下文、检索、工具、异步、评估、训练与协作八大主题,做完它们你就拥有了贯穿全书的动手经验。
"上下文决定了 Agent 能看到什么,而 Agent 只能基于它看到的信息做决策。"第 1 章 · AI Agent 入门
"行业正在从'能做事'向'可靠地做事'转变,Harness 工程因此成为 Agent 系统的核心竞争力。"第 1 章 · Harness 工程
"一个中等能力的模型配上精心组织的上下文,往往能胜过一个顶级模型在信息匮乏下的盲目摸索。"第 2 章 · 上下文工程
"上下文窗口是一台只有一半的检索引擎。"第 2 章 · Agent 状态栏
"把知识库当成代码库,把每次知识变更当成一个 Pull Request……生产环境不应让任何一个模型绕过审核,直接改主分支或线上向量库。"第 3 章 · 知识如何更新
"模型感知到的世界与工具操作的世界之间,不能存在系统性的偏差。"第 4 章 · 参数传递的保真性
"思考上,形式化代码让思考高度严谨……表达上,一段能跑通的代码本身就是逻辑自洽的证明。"第 5 章 · Coding Agent 与通用 Agent
"回合制是训练留下的假设,不是环境的性质。"第 6 章 · 交互:观察与动作空间的扩展
"当一个度量指标变成优化目标时,它就不再是好的度量指标。"(古德哈特定律)第 7 章 · 自动化评估方法
"数据里的每一处噪声,SFT 都可能忠实地写进参数——与其堆十万条脏数据,不如精修一万条干净数据。"第 8 章 · 模型后训练
"模型会把观察到的行为当作应然的行为。"第 9 章 · 从轨迹中获得学习信号
"真正的保证必须来自被修改者无法触及的那一层。"第 9 章 · 持续进化的安全边界
"在验证之前,'完成'只是模型的一句宣称,不是证明。"第 10 章 · Loop 工程
"你可以外包你的思考,但不能外包你的理解。"第 10 章 · 多 Agent 的失败模式(引 Karpathy)